package cn.kgc.springday04.entity;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

/**
 * @author 课工场
 * @date 2023/10/9
 * @description  使用注解 实现改变对象的作用域  以及指定初始化方法和销毁方法
 *  @Scope("") 指定对象的作用域   singleton   prototype
 */
@Component
//@Scope("prototype")
public class User {

    @Value("root")
    private String username;

    @Value("30")
    private Integer age;


    public  User(){
        System.out.println("User()对象被创建");
    }


    @PostConstruct  // 指定初始化方法
    public void  init(){
        System.out.println("初始化方法被调用");
    }

    @PreDestroy   // 指定销毁方法
    public void  destroy(){
        System.out.println("销毁方法被调用");
    }

}
